home *** CD-ROM | disk | FTP | other *** search
/ PC World Interactive 7 / PC World Interactive 7.iso / program / dosref.EXE / CONTENTS < prev    next >
Text File  |  1996-04-23  |  15KB  |  245 lines

  1.  
  2.        **  Programmer's Technical Reference for MSDOS and the IBM PC **
  3.  
  4.  
  5.  
  6.                            TABLE OF CONTENTS
  7.  
  8.  
  9. INTRO           Introduction, credits, copyrights
  10.  
  11.  
  12. CHAPTER 1       DOS and the PC
  13.  
  14. Some History ..................................................... 1**1
  15. What is DOS? ..................................................... 1**2
  16. Other Operating Systems .......................................... 1**3
  17. Specific Versions of MS/PC-DOS ................................... 1**4
  18. The Operating System Heirarchy ................................... 1**5
  19. DOS Structure .................................................... 1**6
  20. DOS Initialization ............................................... 1**7
  21.  
  22.  
  23. CHAPTER 2       Low Memory and Absolute Addresses
  24.  
  25. Introduction ..................................................... 2**1
  26. System Memory Map ................................................ 2**2
  27. A Brief Guide to Current Memory Terminology ...................... 2**3
  28. PC Port Assignment ............................................... 2**4
  29. Reserved Memory Locations ........................................ 2**5
  30. Absolute Addresses ............................................... 2**6
  31. The IBM PC System Interrupts (Overview) .......................... 2**7
  32. Quick Chart of Interrupts 00h-0FFh ............................... 2**8
  33. IRQ Usage Chart .................................................. 2**9
  34. The IBM-PC System Interrupts 00h-0Fh (in detail) ................. 2**10
  35.                                                             
  36.  
  37. CHAPTER 3       ROM BIOS and Serice Interrupts
  38.  
  39. Calling the ROM BIOS ............................................. 3**1
  40. Interrupt 10h  Video Services .................................... 3**2
  41. Interrupt 11h  Equipment Check ................................... 3**3
  42. Interrupt 12h  Memory Size ....................................... 3**4
  43. Interrupt 13h  Disk Functions .................................... 3**5
  44. Interrupt 14h  Initialize and Access Serial Port ................. 3**6
  45. FOSSIL Drivers ................................................... 3**7
  46. Interrupt 15h  Cassette I/O ...................................... 3**8
  47. Interrupt 16h  Keyboard I/O ...................................... 3**9
  48. Interrupt 17h  Printer ........................................... 3**10
  49. Interrupt 18h  ROM BASIC ......................................... 3**11
  50. Interrupt 19h  Bootstrap Loader .................................. 3**12
  51. Interrupt 1Ah  Time of Day ....................................... 3**13
  52. Interrupt 1Bh  Control-Break ..................................... 3**14
  53. Interrupt 1Ch  Timer Tick ........................................ 3**15
  54. Interrupt 1Dh  Vector of Video Initialization Parameters ......... 3**16
  55. Interrupt 1Eh  Vector of Diskette Controller Parameters .......... 3**17
  56. Interrupt 1Fh  Ptr to Graphics Char Extensions (Graphics Set 2) .. 3**18
  57.  
  58.  
  59. CHAPTER 4       DOS Function Requests
  60.  
  61. General Programming Guides ....................................... 4**1
  62. DOS Registers .................................................... 4**2
  63. DOS Stacks ....................................................... 4**3
  64. DOS Interrupts ................................................... 4**4
  65. Interrupt 20h (Terminate) ........................................ 4**5
  66. DOS Services (quick list) ........................................ 4**6
  67. Calling the DOS Services ......................................... 4**7
  68. Version Specific Information ..................................... 4**8
  69. Compatibility Problems With DOS 4.0+ ............................. 4**9
  70. PCjr Cartridge Support ........................................... 4**10
  71. eDOS 4.0 ......................................................... 4**11
  72. DOS Services in Detail ........................................... 4**12
  73.  
  74.  
  75. CHAPTER 5       Interrupts 22h through 0FFh
  76.  
  77. Interrupt 22h   Terminate Address ................................ 5**1
  78. Interrupt 23h   Ctrl-Break Exit Address .......................... 5**2
  79. Interrupt 24h   Critical Error Handler ........................... 5**3
  80. Interrupt 25h   Absolute Disk Read ............................... 5**4
  81. Interrupt 26h   Absolute Disk Write .............................. 5**5
  82. Interrupt 27h   Terminate And Stay Resident ...................... 5**6
  83. Interrupt 28h   (not documented by Microsoft) .................... 5**7
  84. Interrupt 29h   (not documented by Microsoft) .................... 5**8
  85. Interrupt 2Ah   Microsoft Networks - Session Layer Interrupt ..... 5**9
  86. Interrupt 2Bh   Unknown .......................................... 5**10
  87. Interrupt 2Ch   Unknown .......................................... 5**11
  88. Interrupt 2Dh   Unknown .......................................... 5**12
  89. Interrupt 2Eh   Alternate EXEC (DOS 2.0+) ........................ 5**13
  90. Interrupt 2Fh   Multiplex Interrupt .............................. 5**14
  91. Interrupt 30h   FAR jump instruction for CP/M-style calls ........ 5**15
  92. Interrupt 31h   Unknown .......................................... 5**16
  93. Interrupt 32h   Unknown .......................................... 5**17
  94. Interrupt 33h   Used by Microsoft Mouse Driver Function Calls .... 5**18
  95. Interrupt 34h   Turbo C/Microsoft languages - Floating Point ....  5**19
  96. Interrupt 35h   Turbo C/Microsoft languages - Floating Point ....  5**20
  97. Interrupt 36h   Turbo C/Microsoft languages - Floating Point ....  5**21
  98. Interrupt 37h   Turbo C/Microsoft languages - Floating Point ....  5**22
  99. Interrupt 38h   Turbo C/Microsoft languages - Floating Point ....  5**23
  100. Interrupt 39h   Turbo C/Microsoft languages - Floating Point ....  5**24
  101. Interrupt 3Ah   Turbo C/Microsoft languages - Floating Point ....  5**25
  102. Interrupt 3Bh   Turbo C/Microsoft languages - Floating Point ....  5**26
  103. Interrupt 3Ch   Turbo C/Microsoft languages - Floating Point ....  5**27
  104. Interrupt 3Dh   Turbo C/Microsoft languages - Floating Point ....  5**28
  105. Interrupt 3Eh   Turbo C/Microsoft languages - Floating Point ..... 5**29
  106. Interrupt 3Fh   Overlay Manager Interrupt (Microsoft LINK.EXE) ... 5**30
  107. Interrupt 40h   Hard Disk BIOS ................................... 5**31
  108. Interrupt 41h   Hard Disk Parameters ............................. 5**32
  109. Interrupt 42h   Pointer to screen BIOS entry ..................... 5**33
  110. Interrupt 43h   Pointer to EGA Graphics Character Table .......... 5**34
  111. Interrupt 44h   Pointer to graphics character table .............. 5**35
  112. Interrupt 45h   Reserved by IBM  (not initialized) ............... 5**36
  113. Interrupt 46h   Pointer to second hard disk parameter block ...... 5**37
  114. Interrupt 47h   Reserved by IBM  (not initialized) ............... 5**38
  115. Interrupt 48h   Cordless Keyboard Translation .................... 5**39
  116. Interrupt 49h   Non-kbd Scan Code Translation Table Addr (PCjr) .. 5**40
  117. Interrupt 4Ah   Real-Time Clock Alarm (Convertible, PS/2) ........ 5**41
  118. Interrupt 4Bh   Reserved by IBM  (not initialized) ............... 5**42
  119. Interrupt 4Ch   Reserved by IBM  (not initialized) ............... 5**43
  120. Interrupt 4Dh   Reserved by IBM  (not initialized) ............... 5**44
  121. Interrupt 4Eh   Reserved by IBM  (not initialized) ............... 5**45
  122. Interrupt 4Fh   Reserved by IBM  (not initialized) ............... 5**46
  123. Interrupt 50-57 IRQ0-IRQ7 Relocation ............................. 5**47
  124. Interrupt 58h   Reserved by IBM  (not initialized) ............... 5**48
  125. Interrupt 59h   Reserved by IBM  (not initialized) ............... 5**49
  126. Interrupt 5Ah   Reserved by IBM  (not initialized)  .............. 5**50
  127. Interrupt 5Bh   Reserved by IBM  (not initialized) ............... 5**51
  128. Interrupt 5Ah   Cluster Adapter BIOS entry address ............... 5**52
  129. Interrupt 5Bh   Reserved by IBM  (not initialized) ............... 5**53
  130. Interrupt 5Ch   NETBIOS interface entry port, TOPS ............... 5**54
  131. Interrupt 5Dh   Reserved by IBM  (not initialized) ............... 5**55
  132. Interrupt 5Eh   Reserved by IBM  (not initialized) ............... 5**56
  133. Interrupt 5Fh   Reserved by IBM  (not initialized) ............... 5**57
  134. Interrupt 60h-67h  User Program Interrupts ....................... 5**58
  135. Interrupt 60h   Network OS Interface ............................. 5**59
  136. Interrupt 67h   Expanded Memory Board Driver Interrupt ........... 5**60
  137. Interrupt 68h   Not Used  (not initialized) ...................... 5**61
  138. Interrupt 69h   Not Used  (not initialized) ...................... 5**62
  139. Interrupt 6Ah   Not Used  (not initialized) ...................... 5**63
  140. Interrupt 6Bh   Not Used  (not initialized) ...................... 5**64
  141. Interrupt 6Ch   System Resume Vector (Convertible) ............... 5**65
  142. Interrupt 6Dh   Not Used  (not initialized) ...................... 5**66
  143. Interrupt 6Eh   Not Used  (not initialized) ...................... 5**67
  144. Interrupt 6Fh   10-Net API........................................ 5**68
  145. Interrupt 70h   IRQ 8, Real Time Clock Int (AT, XT/286, PS/2) .... 5**69
  146. Interrupt 71h   IRQ 9, Redirected to IRQ 8 (AT, XT/286, PS/2) .... 5**70
  147. Interrupt 72h   IRQ 10  (AT, XT/286, PS/2)  Reserved ............. 5**71
  148. Interrupt 73h   IRQ 11  (AT, XT/286, PS/2)  Reserved ............. 5**72
  149. Interrupt 74h   IRQ 12  Mouse Interrupt (PS/2) ................... 5**73
  150. Interrupt 75h   IRQ 13, Coprocessor Error (AT) ................... 5**74
  151. Interrupt 76h   IRQ 14, Hard Disk Controller (AT, XT/286, PS/2) .. 5**75
  152. Interrupt 77h   IRQ 15 (AT, XT/286, PS/2)  Reserved .............. 5**76
  153. Interrupt 78h   Not Used ......................................... 5**77
  154. Interrupt 79h   Not Used ......................................... 5**78
  155. Interrupt 7Ah   Reserved ......................................... 5**79
  156. Interrupt 7Bh-7Eh  Not Used by IBM ............................... 5**80
  157. Interrupt 7Ch   REXX-PC API ...................................... 5**81
  158. Interrupt 7Fh   IBM 8514/A Graphics Adapter API .................. 5**82
  159. Interrupt 80h-85h  Reserved by BASIC ............................. 5**83
  160. Interrupt 86h   Int 18 when relocated by NETBIOS ................. 5**84
  161. Interrupt 86h-0F0h  Used by BASICA ............................... 5**85
  162. Interrupt 0A4h  Right Hand Man API ............................... 5**86
  163. Interrupt 0D4h  PC-MOS/386 API ................................... 5**87
  164. Interrupt 0E0h  Digital Research CP/M-86 function calls .......... 5**88
  165. Interrupt 0E1h  PC Cluster Disk Server Information ............... 5**89
  166. Interrupt 0E2h  PC Cluster Program ............................... 5**90
  167. Interrupt 0E4h  Logitech Modula-2 v2.0   Monitor Entry ........... 5**91
  168. Interrupt 0E5h  Not Used ......................................... 5**92
  169. Interrupt 0E6h  Not Used ......................................... 5**93
  170. Interrupt 0E7h  Not Used ......................................... 5**94
  171. Interrupt 0E8h  Not Used ......................................... 5**95
  172. Interrupt 0E9h  Not Used ......................................... 5**96
  173. Interrupt 0EAh  Not Used ......................................... 5**97
  174. Interrupt 0EBh  Not Used ......................................... 5**98
  175. Interrupt 0ECh  Not Used ......................................... 5**99
  176. Interrupt 0EDh  Not Used ......................................... 5**100
  177. Interrupt 0EEh  Not Used ......................................... 5**101
  178. Interrupt 0EFh  GEM interface (Digital Research) ................. 5**102
  179. Interrupt 0F0h  unknown .......................................... 5**103
  180. Interrupts 0F1h-0FFh  (absolute addresses 3C4h-3FFh) ............. 5**104
  181. Interrupt 0F4h  Not Used ............ ............................ 5**105
  182. Interrupt 0F5h  Not Used ............ ............................ 5**106
  183. Interrupt 0F8h  Set Shell Interrupt (OEM) ........................ 5**107
  184. Interrupt 0F9h  Reserved ......................................... 5**108
  185. Interrupt 0FAh  USART ready (RS-232C) ............................ 5**109
  186. Interrupt 0FBh  USART RS ready (keyboard) ........................ 5**110
  187. Interrupt 0FCh  Unknown ...........................................5**111
  188. Interrupt 0FDh  reserved for user interrupt ...................... 5**112
  189. Interrupt 0FEh  reserved by IBM .................................. 5**113
  190. Interrupt 0FFh  reserved by IBM .................................. 5**114
  191.  
  192.  
  193.  
  194. CHAPTER 6       DOS Control Blocks and Work Areas
  195.  
  196. DOS Address Space ................................................ 6**1
  197. Storage Blocks ................................................... 6**2
  198. Disk Transfer Area (DTA) ......................................... 6**3
  199. Program Segment Prefix ........................................... 6**4
  200. Memory Control Blocks ............................................ 6**5
  201. DOS Program Segment .............................................. 6**6
  202.  
  203.  
  204. CHAPTER 7       DOS File Information
  205.  
  206. File Management Functions ........................................ 7**1
  207. FCB Function Calls ............................................... 7**2
  208. Handle Function Calls ............................................ 7**3
  209. Special File Handles ............................................. 7**4
  210. Raw and Cooked File I/O .......................................... 7**5
  211. Number of Open Files Allowed  .................................... 7**6
  212. Restrictions on FCB Usage ........................................ 7**7
  213. Restrictions on Handle usage ..................................... 7**8
  214. Allocating Space to a File ....................................... 7**9
  215. MSDOS / PCDOS Differences ........................................ 7**10
  216. .COM File Structure .............................................. 7**11
  217. .EXE File Structure .............................................. 7**12
  218. The Relocation Table ............................................. 7**13
  219. "NEW" .EXE Format (Microsoft Windows and OS/2) ................... 7**14
  220. Standard File Control Block ...................................... 7**15
  221. Extended File Control Block ...................................... 7**16
  222. Disk Transfer Area ............................................... 7**17
  223.  
  224.  
  225. CHAPTER 8       DOS Disk Information
  226.  
  227. The DOS Area ..................................................... 8**1
  228. The Boot Record .................................................. 8**2
  229. DOS File Allocation Table (FAT) .................................. 8**3
  230.         Media Descriptor Byte .................................... 8**4
  231.         12 Bit FATs .............................................. 8**5
  232.         16 Bit FATs .............................................. 8**6
  233. Cluster Size Information ......................................... 8**7
  234. DOS Disk Directory ............................................... 8**8
  235. The Data Area .................................................... 8**9
  236. Floppy Disk Types ................................................ 8**10
  237. Hard Disk Layout ................................................. 8**11
  238. System Initialization ............................................ 8**12
  239. Boot Record/Partition Table ...................................... 8**13
  240. Hard Disk Technical Information .................................. 8**14
  241. Determining Hard Disk File Allocation ............................ 8**15
  242. BIOS Disk Functions .............................................. 8**16
  243.  
  244. CHAPTER 9       DOS Device Drivers
  245.